package com.linkgie.galaxyframework.service.organization.intf;

import com.linkgie.galaxyframework.organization.Organization;
import com.linkgie.galaxyframework.service.organization.DepartmentService;
import com.linkgie.galaxyframework.service.organization.data.Department;
import com.linkgie.galaxyframework.service.organization.data.DepartmentDefinition;

public interface DepartmentManagementService extends DepartmentService {

	/**
	 * 在当前组织下创建部门；
	 * 
	 * @param departmentDefinition 新部门的信息；
	 * @param parentOrganitionPath 新部门所属的上级部门的组织路径；
	 * @return
	 */
	Department createDepartment(DepartmentDefinition departmentDefinition, String parentOrganitionPath);
	
	/**
	 * 在指定组织下创建部门；
	 * 
	 * @param departmentDefinition 新部门的信息；
	 * @param parentOrganitionPath 新部门所属的上级部门的组织路径；
	 * @param organization 新部门所属的组织；
	 * @return
	 */
	Department createDepartment(DepartmentDefinition departmentDefinition, String parentOrganitionPath, Organization organization);
	
}
